草庐IT

c++ - 影响 Makefile 中其他库的库

全部标签

c - 如何从 C 库中检索 probuf

我正在尝试使用GoogleProtocolBuffers与Go中的C库进行通信,但我无法使其正常工作。我在尝试将protobuf发送到C库时遇到错误我将发布最少的代码来重现我现在面临的错误(我删除了大部分C部分,因为它与此错误无关):/*#cgoCFLAGS:-I@CURRENT_SOURCE_DIR@/../../library/crnd/include-I@CMAKE_CURRENT_BINARY_DIR@/../../library#cgoLDFLAGS:-L@CRND_LIBRARY_PATH@-lcrnd#include#include#include#includetype

go - 如何初始化一个 zap 记录器并在其他 Go 文件中重用它?

我正在尝试从漂亮的Logrus(对调试非常有帮助)迁移我的应用程序并引入Uber日志框架Zap。使用Logrus,我可以只初始化记录器一次并从其他Go文件中重用它,例如:packagemainimport(//Printfilenameonlogfilename"github.com/onrik/logrus/filename"//Veryniceloglibrarylog"github.com/sirupsen/logrus")funcmain(){//====SETLOGGINGFormatter:=new(log.TextFormatter)Formatter.Timestamp

makefile - 安装 web.go 错误

我正在尝试安装web.go。我得到了源代码并运行了make,但我收到了这些错误:g-o_go_.6cookie.gofcgi.gorequest.goscgi.goservefile.gostatus.goweb.gocookie.go:33:c.Versionundefined(type*http.CookiehasnofieldormethodVersion)cookie.go:34:c.Versionundefined(type*http.CookiehasnofieldormethodVersion)cookie.go:54:c.Commentundefined(type*ht

go - 如何将 net/http 传递给其他包

我将以下代码片段用于http服务器。在主包中:http.HandleFunc("/aa",aahandler)http.Handle("/echo",websocket.Handler(bbhandler.Wshandle))...http.ListenAndServe()bbhandler是自定义包。以上代码有效。现在我想在bbhandler中添加一个函数Register。Register(){http.Handle("/echo",websocket.Handler(Wshandle))...}主包代码片段将变为:http.HandleFunc("/aa",aahandler)bb

c - 将 go linker 构建为独立工具

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我正在浏览go源代码,我想将其构建为osx的独立链接器,可以生成mach-o文件。有办法做到这一点吗?

Go:制作一个可从其他 Go 应用程序调用的守护进程

我正在编写一个巨大的单词词典->语言,我拥有的数据,但我需要的是让一个线程运行一个守护进程,用Go编写,它将所有这些保存在内存中(是的,我也有那么多内存)并且可以被其他Go应用程序“调用”。我确信这是一种标准类型的操作,但老实说,我以前从未尝试过这样的操作,而且我不太熟悉,不知道在哪里可以找到有关如何执行此操作的信息。让它作为守护进程运行很容易。我的问题是什么是从另一个Go应用程序调用此应用程序的有效方法,这将需要完成数百万次。我在想一些事情:connection,err:=InitateConnectionToApp()for_,someword:=rangemysliceofstr

go - 没有 SWIG 和第三方库的 Go 中的 OpenCV

主要目标:使OpenCV在Go中工作,无需SWIG和第三方库(使用Go在linux中比较图像的应用程序)我是所有工具包的新手(OpenCvGo和linux)图像检测(feature2d等)只能通过C-api完成吗?没有方便的方式来调用C++代码并且C-api没有更新(?)我关注了HowtouseC++inGo?但我失败了。我在make的时候报了如下错误makefile:5:/usr/local/go/bin/src/Make.amd64:Nosuchfileordirectorymakefile:6:/usr/local/go/bin/src/Make.pkg:Nosuchfileor

concurrency - 潜在递归任务的工作池(即,每个作业都可以排队其他作业)

我正在编写一个应用程序,用户可以从多个“作业”(实际上是URL)开始。在开始(主例程)时,我将这些URL添加到队列中,然后启动x个处理这些URL的goroutines。在特殊情况下,URL指向的资源可能包含更多必须添加到队列中的URL。这3名worker正在等待新工作的到来并处理它们。问题是:一旦每个worker都在等待工作(并且没有人在生产),worker应该完全停止。因此,要么所有人都工作,要么没有人工作。我当前的实现看起来像这样,但我认为它并不优雅。不幸的是,我想不出一个不包含竞争条件的更好方法,而且我不完全确定这个实现是否真的按预期工作:varqueue//fromsomewh

go - 读取文件时,为什么ReadBytes会影响后面的Read?

当使用reader.Read分块读取文件时,每次调用读取32KB。但是如果我使用reader.ReadBytes,它会将下一个reader.Read读取的字节数减少到3KB。另一个问题:为什么我不能使用reader.Read和bufio.NewReaderSize读取超过32KB的数据?我的代码:funcSomeFunc(){gzfile,err:=os.Open(SomeFile)ErrorPanic(err)input_file,err:=gzip.NewReader(gzfile)ErrorPanic(err)//reader:=bufio.NewReaderSize(input

c - C/Go 中的 LDAP : Error code 53 "Server is unwilling to perfom" when trying to set unicodePwd

所以我正在用Go编写一个程序,由于CGo,我使用C绑定(bind),并且我正在使用ldap来执行搜索、添加和修改操作。我可以设法做到所有这些,但现在我试图在unicodePwdmod_type中设置密码,但我似乎无法解决错误53:服务器不愿意执行。我知道很多东西会导致这个错误,所以:我与ldaps连接。为了测试目的,我硬编码了一个由10个字符组成的密码,开头和结尾都带有双引号,并以UTF-16LE、Base64格式获得了该密码。密码有小写字母、大写字母和标点符号。这是我的一些代码示例,我现在只是在测试一些东西,所以编码真的很糟糕:设置选项:C.ldap_set_option(l,LDA